package com.xhs.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;
import com.mybatisflex.annotation.Table;
import lombok.*;

import java.io.Serializable;
import java.util.Date;

/**
 * 实体类。
 *
 * @author xhs
 * @since 2023-08-04
 */

@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@EqualsAndHashCode(callSuper = true)
@Table(value = "me_company")
public class MeCompanyEntity extends BaseEntity implements Serializable {

    /**
     * ID
     */
    @Id(keyType = KeyType.Auto)
    private Integer id;

    /**
     * 企业ID
     */
    private String meCompGuid;

    /**
     * 企业简称
     */
    private String meCompNo;

    /**
     * 公司名称
     */
    private String meCompName;

    /**
     * 社会统一信用代码
     */
    private String businessCreditNo;

    /**
     * 营业执照注册号
     */
    private String licenseRegistNo;

    /**
     * 法定代表人
     */
    private String licenseLegalRepresentative;

    /**
     * 实收资本
     */
    private String licensePaidInCapital;

    /**
     * 注册资本
     */
    private String licenseRegisteredCapital;

    /**
     * 公司网址
     */
    private String compUrl;

    /**
     * 办公地址（和详细地址有点区别，有可能值相同，有可能不同）
     */
    private String officeAddress;

    /**
     * 经营范围
     */
    private String licenseBusinessScope;

    /**
     * 注册方式（正向注册、特需注册）
     */
    private String registWayName;

    /**
     * 注册来源代码（中文）
     */
    private String registSourceName;

    /**
     * 注册时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Column(onInsertValue = "now()")
    private Date registDate;

    /**
     * 类型（境内、境外）
     */
    private String meCompType;

    /**
     * 类型说明
     */
    private String meCompTypeName;

    /**
     * 状态中文（注册成功，已审核）
     */
    private String statusName;

    /**
     * 审核状态中文（信息未补全状态、信息已补全完整状态）
     */
    private String auditStatusName;

}
